This invention relates in general to a method and apparatus for operationally controlling at least one device in response to input provided by an operator through a user interface and, more particularly, to an arrangement which can be used to configure the system and user interface.
There are various environments which each include a number of electrical or electronic components, where it is desirable to be able to control each of these components through a single user interface. For example, a corporate boardroom may be used for multi-media presentations to clients or management, and may include equipment such as a video cassette recorder, laser disk player, compact disk player, cassette tape deck, digital satellite system, slide projector, video projector, AM/FM receiver with speaker system, two retractable projection screens, and dimmable overhead lighting. Similarly, a home theater environment may include a large-screen television, an AM/FM receiver with speaker system, a compact disk player, a laser disk player, a video cassette recorder, and a cassette tape deck.
In order to facilitate central control of several electrical or electronic devices, an existing system includes a control unit which is operationally coupled to each of the devices to be controlled, and a hand-held remote with a touch-panel display. The touch-panel display is used to present a user interface to the operator, through which the operator can specify how the control devices are to be controlled. In response to input from the operator, the remote sends wireless signals to the control unit. The control unit responds to these wireless signals by sending commands to the controlled devices, for example by issuing infrared commands that the controlled devices are inherently designed to recognize and implement. In order to configure the control unit and the remote, a personal computer is used. While this existing arrangement has been generally adequate for its intended purposes, it has not been satisfactory in all respects.
More specifically, the user interface is generated from predefined images or pages for the touch-panel, which are usually designed to work with a number of devices in a given equipment class. For example, a particular page may be designed for use with a number of different AM/FM receivers, which are all classified in a common receiver class. However, a given receiver may not be able to carry out all of the functions which the predefined page is designed to provide. Thus, the resulting user interface may have pages which include operator actuatable buttons that are visible to the user but that do not do anything, because they correspond to a function which the particular receiver is not capable of carrying out. Problems of this type are aesthetically undesirable. Another consideration is that the existing system has no mechanism for providing a page which takes up only a part of the display, in order that a portion of another page can also be viewed at the same time, at least without substantial manual programming work.
A further consideration relates to power control for controlled devices. It is desirable to be able to carry out a discrete power on, a discrete power off, and a power toggle operation for many types of controlled devices, but some of these devices do not inherently recognize all three types of commands. For example, a given device may recognize only the power toggle command, or may recognize only the discrete power on and off commands. The known system has no convenient capability for implementing all three functions for a device which is not capable of inherently performing all three functions. This presents a problem in a situation where it is desirable to be able to use a single button in the user interface to turn on power to most or all system components, or to turn off power to most or all system components. For example, if a particular device inherently has only a power toggle capability, it is difficult to know whether that device is already on or off at a given point in time when it is desirable to force it to an on state or an off state. The existing system is not capable of readily and efficiently providing the capability to do all three functions with respect to a particular controlled device. At best, a substantial amount of manual effort would be required for configuration and programming in order to achieve this result.
From the foregoing, it may be appreciated that a need has arisen for a method and apparatus for configuring a system and a user interface so as to control one or more control devices. The present invention is provided to address this need. A first form of the present invention involves: maintaining a device database which contains respective device information for each of a plurality of different devices; maintaining an initial interface definition for a device class which includes a plurality of the devices in the database; permitting an operator to select a device in the device class to be the controlled device; automatically preparing a modified interface definition by modifying the initial interface definition based on the device information in the device database which corresponds to the controlled device; and controlling the user interface portion using an interface control definition which is a function of the modified interface definition.
A further form of the present invention relates to configuration of a user interface portion of a system which controls a controlled device, where the user interface portion includes a display. This form of the invention involves: maintaining a device database which identifies a plurality of different devices; maintaining an interface database which includes information defining a plurality of images each capable of being displayed on the display, each of the devices in the device database being associated with at least one of the images, and at least one of the images having a reduced size smaller than the size of the display; permitting an operator to select as the controlled device a device in the device database which is associated with a first image which has the reduced size; preparing an interface control definition which includes at least two images, one of which is the first image, the interface control definition displaying the first image by overlaying the first image over at least a portion of a second image which is one of the images in the interface control definition other than the first image; and controlling the user interface portion using the interface control definition.
Yet another form of the present invention involves: maintaining a device database which contains respective device information for each of a plurality of different devices, the device information including for each of the different devices an indication of whether that device is responsive to each of a power on command, a power off command and a power toggle command; permitting an operator to select as the controlled device a device in the device database; automatically evaluating the device information in the database to determine whether the controlled device is responsive to each of the power toggle command and the power on and off commands; responding to a determination that the controlled device is responsive to the power toggle command and nonresponsive to the power on and power off commands by automatically adding to the system configuration a power sensor for the controlled device which detects a current power state of the controlled device; automatically preparing a control definition for the system which selectively effects power toggle control of the controlled device by transmitting the power toggle command to the controlled device, and which selectively effects discrete power on and power off control of the controlled device by interrogating the power sensor to determine the current power state of the controlled device and by then conditionally transmitting the power toggle command to the controlled device in dependence on the result of the interrogation of the power sensor; and controlling the system using the control definition.
Still another form of the present invention involves: maintaining a device database which contains respective device information for each of a plurality of different devices, the device information for each of the different devices including an indication of whether that device is responsive to each of a power on command, a power off command and a power toggle command; permitting an operator to select as the controlled device a device in the device database; automatically evaluating the device information in the database to determine whether the controlled device is responsive to each of the power toggle command and the power on and off commands; responding to a determination that the controlled device is responsive to the power on and off commands but nonresponsive to the power toggle command by automatically preparing a control definition for the system which includes a variable that mirrors the current power state of the controlled device, which selectively effects power on and off control of the controlled device by selectively transmitting the power on and off commands to the controlled device while updating the variable to indicate the current power state of the controlled device, and which selectively effects power toggle control of the controlled device by transmitting one of the power on and off commands to the controlled device in dependence on the current state of the variable and by inverting the state of the variable; and controlling the system using the control definition.